#include <QCoreApplication>
#include <QProcess>
#include <QDebug>

int main(int argc, char *argv[])
{
    QCoreApplication app(argc, argv);

    // 创建 QProcess 对象
    QProcess process;

    // 设置要运行的命令和参数
    QString program = "ros2";
    QStringList arguments;
    arguments << "run" << "moveit2_tutorials" << "force_servo"; // 替换为你的 ROS 2 包名和节点名

    // 启动进程
    process.start(program, arguments);

    // 等待进程完成（可选，如果需要同步执行）
    if (!process.waitForStarted()) {
        qDebug() << "Failed to start process:" << process.errorString();
        return 1;
    }

    process.waitForFinished(); // 等待进程结束
    qDebug() << "Output:" << process.readAllStandardOutput(); // 打印标准输出
    qDebug() << "Error:" << process.readAllStandardError();   // 打印错误输出

    return app.exec();
}